package oj;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class LC438 {
    public List<Integer> findAnagrams(String s, String p) {
        int[] pa=new int[26];
        int[] sa=new int[26];
        for(int i=0;i<p.length();i++){
            pa[p.charAt(i)-'a']++;
        }
        List<Integer> list=new ArrayList<>();
        int i=0;
        int j=0;
        while(j<s.length()){
            while(j<s.length() && j-i+1<=p.length()){
                sa[s.charAt(j)-'a']++;
                j++;
            }
            if(Arrays.equals(sa,pa)){
                list.add(i);
            }
            sa[s.charAt(i)-'a']--;
            i++;
        }
        return list;
    }
}
